home *** CD-ROM | disk | FTP | other *** search
/ The X-Philes (2nd Revision) / The X-Philes Number 1 (1995).iso / xphiles / hp48_2 / vsrc.tar / voyager7_src / tree.h < prev    next >
C/C++ Source or Header  |  1991-02-27  |  1KB  |  55 lines

  1. #if !defined(tree_included)
  2. #define tree_included
  3. /*
  4. // Abstract:
  5. //    TREE.H---Balanced Binary Tree Routines
  6. //
  7. //    The Balanced Binary Tree Routines C include file defines the
  8. //    interface to the Balanced Binary Tree Routines.
  9. //
  10. // Author:
  11. //    Derek S. Nickel
  12. //
  13. // Creation date:
  14. //    11 November 1990
  15. //
  16. // History:
  17. // V01-001    Derek S. Nickel        11-NOV-1990
  18. //    Original.
  19. //
  20. */
  21.  
  22. typedef unsigned long cond_value;
  23. typedef unsigned long mask_longword;
  24.  
  25. extern const cond_value lib$_normal;
  26. extern const cond_value lib$_keyalrins;
  27. extern const cond_value lib$_keynotfou;
  28.  
  29. extern cond_value insert_tree(
  30.     void **treehead,
  31.     void *symbol,
  32.     mask_longword *flags,
  33.     int (*compare_rtn)(const void *a, const void *b, const void *c),
  34.     int (*allocate_rtn)(const void *a, void **b, const void *c),
  35.     void **new_node,
  36.     void *user_data );
  37.  
  38. extern cond_value lookup_tree(
  39.     void **treehead,
  40.     void *symbol,
  41.     int (*compare_rtn)(const void *a, const void *b, const void *c),
  42.     void **new_node );
  43.  
  44. extern cond_value traverse_tree(
  45.     void **treehead,
  46.     int (*action_rtn)(const void *node, const void *user_data),
  47.     void *user_data );
  48.  
  49. extern cond_value post_order_traversal(
  50.     void **treehead,
  51.     int (*action_rtn)(const void *node, const void *user_data),
  52.     void *user_data );
  53.  
  54. #endif
  55.